<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
			//日期的原型上拓展方法
			// Date.prototype.XXX=function(){
				
			// }
			
			//在数组的原型上拓展方法
			// Array.prototype.myPush=function(n){
			// 	//1. this--->arr  //2.参数
   //              this[this.length]=n;
			// 	return this.length;
			// }
			
			// let arr=[10,20,30];
			// let res=arr.myPush(40);
			// console.log(arr);//[10,20,30,40]
			// console.log(res);//4 新数组的长度-- push方法，执行后的结果
			
			// console.log(arr);
			
			
			Array.prototype.myPush=function myPush(...args){
				//1. this--->arr  //2.参数  args/arguments
			    for(let i=0;i<args.length;i++){
					this[this.length]=args[i];
				}
				return this.length;
			}
			
			let arr=[10,20,30];
			let res=arr.myPush(40,50,60);
			console.log(arr);//[10,20,30,40,50,60]
			console.log(res);//6 新数组的长度-- push方法，执行后的结果
			
			
			// Array.prototype={}//内置类的原型，不允许随意修改，你只能往上添加方法
		 //    let arr=[10,20,30];
		 //    console.log(arr);
			
			
			// function Person(name,age){
			// 	//this.name=name;
			// 	this.age=age;
			// }
			
			// Person.prototype=Array.prototype;
			
			// let p=new Person("lili",18);
			// console.log(p);
			
			
			//修改原型上已有的方法---》重写
			// Array.prototype.push=function pushaa(...args){
			// 	//1. this--->arr  //2.参数  args/arguments
			//     for(let i=0;i<args.length;i++){
			// 		this[this.length]=args[i];
			// 	}
			// 	return this;
			// }
			
			// let arr=[10,20,30];
			// let res=arr.push(40,50,60);
			// console.log(arr);//[10,20,30,40,50,60]
			// console.log(res);//6 新数组的长度-- push方法，执行后的结果
			// console.log(arr);
		</script>
	</body>
</html>
